查看原文
其他

gitlab漏洞系列-存储型XSS所导致的管理员权限升级

richardo1o1 迪哥讲事 2023-07-11


  • 背景

  • 复现步骤


gitlab漏洞系列-存储型XSS所导致的管理员权限升级

声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

背景

ryhmnlfj小哥于2022年1月份提交了这个漏洞:

在Markdown中发现了存储型XSS; 在某些条件下,可以实现权限提升;

复现步骤

受害者:

1.以受害者的身份登陆gitlab;

2.创建一个任何人都可以创建issue的公共项目;

3.在创建过issue之后,退出账号;

攻击者:

1.以攻击者的身份登陆gitlab;

2.创建一个私有项目;

3.在创建私有项目之后,从浏览器地址栏中显示的URL记录下[FULL_NAMESPACE]。

4.跳转至 issue>Milestones而后点击New milestone按钮;

5.用下面的标题创建一个里程碑:

New Milestone <script>alert(document.domain)</script>

6.跳转至受害者上面创建项目的 issue页面;

7.通过替换下面的字符串准备新问题(issue)的描述。用在攻击者第三步获取的值替换[FULL_NAMESPACE]

[FULL_NAMESPACE]%"New Milestone <script>alert(document.domain)</script>"

替换之后,用这个描述(就是上面一行的描述)创建一个新的issue:

8.登出

victim:

1.再次以受害者的身份登入gitlab;

2.转到攻击者第7步创建的问题页面。XSS将自动执行。


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存